package com.marvels.approve.loan.dao;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

import com.github.pagehelper.Page;
import com.marvels.approve.loan.dto.DjPersionInfoDto;
import com.marvels.approve.loan.dto.DownListConditionDto;
import com.marvels.approve.loan.dto.DownListCountAndSumDto;
import com.marvels.approve.loan.dto.DownListQueryDto;
import com.marvels.approve.loan.dto.LcFarmPushInfoDto;
import com.marvels.approve.loan.dto.ListQueryConditionDto;
import com.marvels.approve.loan.dto.LoanDetailDto;
import com.marvels.approve.loan.dto.McamLoanApplyInfoDTO;
import com.marvels.approve.loan.dto.YywBatchInfoDto;
import com.marvels.approve.loan.dto.YywPushInfoDto;

public interface LoanDetailDao {
	
	/**
	 * 放款详情列表
	 * @return
	 */
	public Page<LoanDetailDto> queryLoanList(ListQueryConditionDto listQueryConditionDto);
	
	
	
	
	/**
	 * 大桔用户信息
	 * @param fundSource
	 * @param loanIds
	 * @return
	 */
	public List<DjPersionInfoDto> djPersionInfo(@Param("fundSource") String fundSource,@Param("loanIds")  String[]  loanIds);
	
	
	
	
	/**
	 * 大桔获取征信保单
	 * @param fundSource
	 * @param loanIds
	 * @return
	 */
	//public List<Map<String, Object>> djAchieveCredict(@Param("fundSource") String fundSource,@Param("loanIds")  String[]  loanIds);
	
	
	
	/**
	 * 理财农场推送
	 * @param fundSource
	 * @param loanIds
	 * @return
	 */
	public List<LcFarmPushInfoDto> lcFarmPushInfo(@Param("fundSource") String fundSource,@Param("loanIds")  String[]  loanIds);
	
	
	
	/**
	 * 理财农场用户信息
	 * @param loanId
	 * @return
	 */
	public List<McamLoanApplyInfoDTO> lcFarmPersionInfo(@Param("loanIds")  String[] loanId,@Param("fundCode") String[] fundCode);
	
	
	

	
	
	
	
	/**
	 * 宜盈网
	 * @param fundSource
	 * @param loanIds
	 * @return
	 */
	public List<YywPushInfoDto> yywPushInfo(@Param("fundCode") String fundCode,@Param("loanIds")  String[]  loanIds);
	
	
	
	
	/**
	 * 宜盈网批次信息
	 * @param fundSource
	 * @param loanIds
	 * @return
	 */
	public List<YywBatchInfoDto> yywBatchInfo(@Param("fundSource") String fundSource,@Param("loanIds")  String[]  loanIds);
	
	
	
	/**
	 * 清单查询-下载清单信息
	 * @return
	 */
	public List<DownListQueryDto> queryDetailListBySearch(DownListConditionDto downListInfoConditionDto);



	/**
	 * 获取统计数据  （1）总记录数   (2)总金额
	 * @return
	 */
	public DownListCountAndSumDto queryCountAndSumBySearch(DownListConditionDto downListInfoConditionDto);
}
